0%

하이브리드 웹, 네이티브 웹, 웹 앱의 차이점

localStorage와 session storage의 가장 큰 차이점

  • local storage 만료기간이 없기때문에 브라우저가 종료되어도 남아있는다.

  • session storage 브라우저가 종료되면은 사라진다.


1. 하이브리드 앱

하이브리드 앱은 네이티브 개발과 웹 기술을 융합한 방식입니다. 기본 기능은 HTML 등의 웹 문서로 구현하고, 패키징은 아이폰, 안드로이드 등 모바일 운영 체제(OS) 별로 구현하는 것이다.
따라서 네이티브 앱과 같이 앱 스토어에서 다운로드하여 사용할 수 있고, 기기에 저장된 고유 파일이나 카메라와 같은 하드웨어적인 부분에 접근성을 가질 수도 있습니다. 또한, 근본적으로는 웹 기술을 이용한 것이기에 빠르고, 편리하게 앱을 유지보수할 수 있습니다.

하이브리드 앱의 단점은 네이티브 앱보다 UI를 구성하는 디자인 부분이 취약하며, 성능이 떨어진다는 것입니다. 또한, 웹 브라우저를 실행하여 콘텐츠를 제공하기에 인터넷 속도에 따라 구동 속도가 느려질 수도 있습니다.

1.1. 하이브리드 APP의 장점

■ 네이티브 API 와 브라우저 API 를 이용한 다양한 개발이 가능 합니다.
■ 웹개발 기술을 사용해 앱을 개발할 수 있습니다.
■ 한번의 개발로 다수의 플랫폼에 대응할 수 있습니다.

1.2.하이브리드 APP의 단점

■ 웹뷰에서 앱을 실행하는 경우이기 때문에 앱의 성능이 곧 브라우저의 성능 입니다.
■ UI 프레임워크 도구를 사용하지 않는다면 개발자가 UI를 제작해야 합니다


모바일 웹 (web) 이란?

모바일 웹은 모바일에서 PC용 사이트의 글자폰트와 이미지 , 터치 아이콘 , 플래시 등 데스크탑 브라우저에서 실행되는 기능을 모바일에 맞추어 표현한 사이트를 의미합니다. 쉽개말해 , PC용 홈페이지를 모바일 스크린의 크기에 맞춰 줄여 놓은 것이라고 생각하시면 됩니다.


2. 웹 앱

웹앱은 모바일웹 과 네이티브앱을 결합한 형태로 모바일웹의 특징을 가지면서 네이티브앱의 장점을 갖고 있습니다. 모바일웹 보다는 조금 더
모바일에 최적화 된 앱을 의미 합니다. 웹앱도 모바일웹 처럼 일반적인 웹기술로 개발되고 모바일 브라우저에서 실행되지만 풀 브라우저 방식이 아닌 단일 페이지 방식으로 화면을 진화해 속도가 빠르다는 장점이 있습니다.

모바일 웹 앱이란 PC나 스마트폰 등 단말기의 기종에 관계없이 모든 단말기에서 같은 콘텐츠를 볼 수 있도록 해주는 앱입니다.
운영체제(OS)와 직접 통신하는 네이티브 앱과 다르게 웹 앱은 브라우저 내에서 실행됩니다. 따라서 앱을 따로 다운로드하거나 업그레이드하지 않고, 항상 최신 버전을 유지할 수 있지요. 또한, OS별로 별도의 플랫폼이 필요하지 않고, HTML5와 같은 표준 웹 언어로 만들어지기 때문에 제작 비용도 저렴하고, 개발 기간도 비교적 짧은 편입니다.
웹 앱 방식은 상대적으로 개발 공수가 적게 들고, 업데이트가 쉽지만 기능상 제한이 많이 따릅니다. 웹 앱은 처음부터 디바이스에 적합한 형태로 만들어지는 것이 아니기 때문입니다. 따라서 네이티브 앱과 비교해 봤을 때, 느리기도 하고, 앱을 통해 기기 고유의 정보를 사용할 수도 없습니다.

2.1. 모바일 웹앱의 장점

■ 웹사이트를 보는 것이기 때문에 따로 설치할 필요가 없습니다.
■ 모든 기기와 브라우저에서 접근할 수 있습니다.
■ 별도 설치 및 승인과정이 필요치 않아 유지보수가 용이 합니다.

2.2. 모바일 웹앱의 단점

■ 플랫폼 API (카메라 등) 을 사용할 수 없고 오로지 , 브라우저 API만을 사용할 수 있습니다.
■ 친화적인 터치 앱을 개발하기가 약간 번거로운 점이 있습니다. (까다로움)
■ 네이티브 , 하이브리드 앱보다 실행이 까다롭습니다. (브라우저를 열고 검색해 들어가야 합니다.)


3. 네이티브 앱

네이티브 앱은 우리가 흔히 말하는 ‘ 어플리케이션 ‘ 을 의미 합니다. 모바일 기기에 최적화 된 언어로 개발 된 앱으로 안드로이드 SDK를 이용해 Java (자바) 언어로 만드는 앱과 iOS 기반 SDK를 이용해 Swift (스위프트) 로 만드는 대부분의 앱이 여기에 속한다고 할 수 있습니다.

네이티브 앱이란 모바일 기기에 직접 다운로드하여 사용하는 앱입니다.

네이티브 앱이란 모바일 기기에 직접 다운로드하여 사용하는 앱입니다. 네이티브 앱은 사용자가 공용 앱스토어에서 직접 설치할 수도 있고, 모바일 공급업체에서 제공할 수도 있습니다.
네이티브 어플을 만들기 위해서는 개발자가 사람이 읽을 수 있는 형식으로 소스코드를 작성하고, 다양한 운영체제(OS: Operation System) 별로 선언 파일이나 이미지, 오디오 등의 리소스를 만들어야 합니다. 그다음, 모바일 운영체제(OS)에서 제공하는 툴을 활용하여 소스코드를 컴파일하고, 여러 실행 파일을 만들어야 하지요.
이처럼 네이티브 앱은 각기의 모바일 운영체제(OS)에서 제공하는 툴과 언어 등에 따라 기능들을 최대한 살리기 때문에, 높은 사양의 그래픽과 성능을 자랑하면서도 구동 속도가 빠른 편입니다. 뿐만 아니라 디바이스 전체에 액세스 권한을 가질 수 있어, 기기에 저장된 주소록, 캘린더 등의 고유 정보를 사용할 수도 있지요.
하지만 다른 방식들보다 높은 수준의 기술력이 필요하며, 각기의 모바일 운영체제(OS)별로 앱을 개발해야하기 때문에 개발 기간이나 비용이 많이 들 수 있습니다.

3.1. 네이티브 앱의 장점

성능이 웹앱 , 하이브리드 앱에 비하여 가장 높습니다.
■ 네이티브 API를 호출하여 사용함으로 플랫폼과 밀착되어 있습니다.
■ 해당 언어에 익숙한 사용자라면 좀 더 쉽게 접근할 수 있습니다.

3.2. 네이티브 앱의 단점

플랫폼에 한정적 입니다.
■ 해당 플랫폼에서 요구하는 언어에 제약적 입니다. 따라서 해당 언어와 플랫폼의 API를 다루는데 익숙해야 합니다.